package Kernel;

import java.io.Serializable;

public abstract class Vehicule implements Serializable {

	private static final long serialVersionUID = 5885537309366642493L;
	protected String denomination;
	protected int capacite;
	protected int vitesse;
	protected String type;

	/**
	 * Retourne la capacité du véhicule
	 * @return est la capacité (int) du véhicule.
	 */
	public int getCapacite(){
		return capacite;
	}

	/**
	 * Change la capacité du véhicule
	 * @param capacite est la nouvelle capacité.
	 */
	public void setCapacite(int capacite){
		this.capacite = capacite;
	}


	/**
	 * Retourne la capacité du véhicule
	 * @return la capacité du véhicule
	 */
	public int getVitesse(){
		return vitesse;
	}

	/**
	 * Modifie la capacité du véhicule 
	 * @param vitesse est la vitesse
	 */
	public void setVitesse(int vitesse){
		this.vitesse = vitesse;
	}
	
	/**
	 * Modifie la dénomination du véhicule 
	 * @param denomination est la nouvelle dénomination du véhicule
	 */
	public abstract void setDenomination(String denomination);
	
	
	/**
	 * Retourne la dénomination du véhicule
	 * @return est la dénomination du véhicule
	 */
	public abstract String getDenomination();

	/**
	 * Formatter l'objet pour la sauvegarde.
	 * @return contient les informations sur l'objet , séparés par des ";"
	 */
	public abstract String print();
	
	/**
	 * Retourne le type du véhicule
	 * @return contient le type du véhicule
	 */
	public abstract String getType();
}
